The invention relates to a processor of images of objects described in three dimensions, which possesses input means for parameters of convex polygons descriptive of such objects in a frame of visual visualization, means for determining, from the parameters of the polygons, the parameters of the pixels of a transformed two-dimensional image of that object, which transformed two-dimensional image is represented in the plane of visualization of a display device, means for selecting and storing the parameters of all the elements of the transformed image which are closest to the plane of visualization, in order to eliminate the concealed faces of the objects, the latter being represented under an angle of observation selected from among a set of angles.
The invention likewise relates to any system of representation of images of objects in three dimensions, which system uses such an image processor.
Three-dimensional (30) graphics rely on he definition of the geometry of the object in three dimensions, then on the displacement of the object in a system of coordinates, and finally on the drawing of the object in the plane of a visual display screen. The basic operations of this displacement are rotation, translation, scaling and perspective. The perspective effect permits restoration of the shape of the object in its depth, and this is simulated in a manner similar to that which the human eye perceives. The object is first of all described in a frame, in the form of spatial coordinates, and then, after the aforegoing operations of displacement, this system of coordinates is transformed according to the system of coordinates of the visual display device. With this purely geometric description there are associated attribute parameters such as shade, colour, texture or transparency, which assure a better rendering of the object in three dimensions on a two-dimensional screen.
The objects are described according to lines, curves or planes, which can themselves be translated into algebraic expressions. According to a widespread procedure, the objects are described according to a set of plane surfaces formed from a succession of convex polygons. The latter must have fairly small dimensions, in order to represent the curved surfaces in a satisfactory manner. The basic method for representing a polygon consists in formulating a list of coordinates of apices, the space delimited by the polygons having to be closed. These polygons may then be described, for example, by plane equations, in order to permit the displacement of the objects in the system of coordinates.
For the restoration of the image of the object, an angle of vision is selected, from which an observer can observe only a certain number of faces of the object, the others necessarily being concealed from him.
In order that this image should represent the object in a clearer, more legible manner, and should not produce an erroneous visual appearance, the techniques of representation of images in three dimensions utilize, in order to eliminate the concealed faces, the method referred to as the "Z-buffer algorithm".
The principle consists in imagining the visual display screen in the form of a box having quasi-infinite depth. The surface of the visual display screen is broken down into a certain number of image elements which are regularly distributed in X and Y. From the angle of vision selected, all the polygons are successively analyzed according to this two-dimensional configuration of the image elements.
At the start of processing, depth coordinates ZM which have been stored are initialized with the furthest coordinate admissible by the system. After this, the processing of each polygon will take place in such a manner that each coordinate Z, associated with each image element contained in a polygon, is compared with the depth coordinate ZM stored in the depth store. When Z is less than ZM, this coordinate ZM is replaced by the coordinate Z which thus becomes the new coordinate ZM associated with the image element. All the polygons constituting the description of the object are analyzed successively, and thus there are conserved for each image element only the data ZM and the attribute parameters C concerning only the points which are closest to the selected point of observation. Thus, the concealed surfaces are not apparent on the screen.
In order to assure the restoration of the three-dimensional object by an image, visualization is carried out of the attributive parameters associated with each face of the object corresponding to each polygon represented. These attribute parameters are also stored in an attribute store. In order to avoid a situation in which sudden variations of color or of shade appear on edges or apices, it is possible to effect an attribute interpolation in one or more directions. Thus, the attributes are defined for the apices of each polygon, and then the attributes of the intermediate image elements are interpolated in order to complete the polygon. This permits a realistic appearance to be imparted to the restored image.
All these mechanisms of representation in three dimensions of images of objects are implemented in the processor described in the publication entitled: "Developing pixel-planes, a smart memory-based raster graphics system", H. FUCHS, J. POULTON, A. PAETH, A. BELL, 1982, Conference on Advanced Research in VLSI, M.I.T. January 27, pages 137, 146. A description is given therein of a system which: identifies all the pixels which are situated in a polygon, determines the pixels which are not masked by previously processed polygons, and determines the color attribute of each pixel.
The speed is determined by proceeding in such a manner that processing is carried out simultaneously on all the pixels, and, in order to achieve this, the system operates on th equation of the plane of the polygon f(x,y)=Ax+By+C, in which x and y are the coordinates of a pixel and the coefficients A, B, C are dependent upon the polygon to be processed.
Such processing, with the aid of the equations of the plane of the polygon, ensures that the architecture is two-dimensional, the coefficients A, B, C being introduced by means of a tree structure.
Such a processor presents difficulties. In the first place, in order to process the equation of the plane globally, it is necessary to have available a two-dimensional network of basic cells for processing. In this case, the surface of the integrated circuit is very large. Secondly, a consequence of the aforegoing is that the speed of operation is relatively restricted.